package br.zeus.lemenu

class CategoriaController {

	def listar = {
		if(Categoria.count() == 0) {
			flash.message = "${message(code: 'categoria.listar.inexistente')}"
			redirect(action: "inserir")
		} else {
			[categoriaInstanceList: Categoria.list()]
		}
	}

	def inserir = {
		def categoriaInstance = new Categoria()
		categoriaInstance.properties = params
		[categoriaInstance: categoriaInstance]
	}

	def save = {
		def categoriaInstance = new Categoria(params)
		if (categoriaInstance.save(flush: true)) {
			flash.message = "${message(code: 'categoria.criada', args: [categoriaInstance.nome])}"
			redirect(action: "listar")
		} else {
			render(view: "inserir", model: [categoriaInstance: categoriaInstance])
		}
	}

	def delete = {
		def selecionados = params.categoria
		for(Integer selecionado : selecionados) {
			def categoria = Categoria.get(selecionado)
			if(!Item.findByCategoria(categoria)) {
				categoria.delete(flush:true)
			} else {
				flash.message = "${message(code: 'categoria.excluir.usada')}"
			}
		}
		
		redirect(action: "listar")
	}
}